package com.sdy.hospitalguard.biz.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sdy.hospitalguard.biz.dto.*;
import com.sdy.hospitalguard.biz.dto.NoticeDto;
import com.sdy.hospitalguard.biz.model.Notice;
import com.sdy.mvc.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * <p>
 * 消息通知 Mapper 接口
 * </p>
 *
 * @author zzq
 * @since 2020-05-09
 */
public interface NoticeMapper extends BaseMapper<Notice> {

    @Select("select * from notice where handler_id = #{userId} and state = 1")
    List<Notice> listMyNoticeNew(@Param("userId") Integer userId);

    Page<NoticeDto> pageMyNoticeALL(Page page, @Param("userId") Integer userId);

    Page<Notice> pageMyALLSendNotice(Page page, @Param("userId") Integer userId);

    Page<Notice> visitApply(@Param("dispose") Integer dispose, @Param("content") String content, Page page);


    /**
     * PC段接口↓
     */
    Page<BacklogVisitApplyDTO> backlogVisitApply(Page page,@Param("arreaId") Integer arreaId);


    List<BacklogVisitApplyPageDTO> backlogVisitApplyPage(@Param("condition") String condition, @Param("result") Integer result , @Param("arreaId") Integer arreaId);

    Page<BacklogVisitApplyPageDTO> backlogVisitApplyPage(Page page, @Param("condition") String condition, @Param("result") Integer result,@Param("arreaId") Integer arreaId);

    Page<BacklogEscorApplyDTO> backlogEscortApply(Page page,@Param("arreaId") Integer arreaId);

    List<BacklogEscorApplyPageDTO> backlogEscortApplyPage(@Param("condition") String condition, @Param("result") Integer result,@Param("arreaId") Integer arreaId);

    Page<BacklogEscorApplyPageDTO> backlogEscortApplyPage(Page page, @Param("condition") String condition, @Param("result") Integer result,@Param("arreaId") Integer arreaId);

    Page<WardTodayVisitDTO> wardTodayVisit(Page page);

}
